package com.lsq.tucao.user.pojo.po;


import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;


/**
 * 用户 与数据库对应
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("user")
public class User {

    /**
     * ID
     */
    @TableId(type = IdType.AUTO)
    private Long userId;
    /**
     * 用户名
     */
    private String username;
    /**
     * 密码
     */
    private String password;
    /**
     * 性别
     */
    private String sex;
    /**
     * 出生日期
     */
    @JsonFormat(pattern="yyyy-MM-dd")
    private Date birthday;
    /**
     * 联系方式（手机号）
     */
    private String phone;
    /**
     * 邮箱
     */
    private String email;
    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;
    /**
     * 修改时间
     */
    @TableField(fill = FieldFill.UPDATE)
    private Date updateTime;


    /**
     * 重写的写equals方法
     */
    @Override
    public boolean equals(Object obj) {
        User other = (User) obj;

        if (obj == null) {
            return false;
        } else if (!username.equals(other.getUsername())) {
            return false;
        } else if (!password.equals(other.getPassword())) {
            return false;
        } else if (!sex.equals(other.getSex())) {
            return false;
        } else if (!birthday.equals(other.getBirthday())) {
            return false;
        } else if (!phone.equals(other.getPhone())) {
            return false;
        } else if (!email.equals(other.getEmail())) {
            return false;
        } else {
            return true;
        }
    }

}

